﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SeizyUtils.Common.Data
{
    /// <summary>
    /// ハンディで利用されるデータを表すインターフェースです。
    /// 例えば、「検品受信データ」などが存在します。
    /// このインターフェースを実装するクラスはシンプルなプロパティクラスであり、
    /// CSVデータレコードやDBテーブルの取得レコードの1行とバインドされます。
    /// </summary>
    public interface IBean : ICloneable
    {
        /// <summary>
        /// beanのフィールドを、インスタンスのフィールドにコピーします。
        /// インスタンスの型が異なる場合は実行時例外を投げます。
        /// </summary>
        /// <param name="bean">コピー元のインスタンス</param>
        void copy(IBean bean);
    }
}
